package com.acme.bankapp.service.bank;

import com.acme.bankapp.domain.bank.CheckingAccount;
import com.acme.bankapp.domain.bank.SavingAccount;
import com.acme.bankapp.domain.bank.Bank;
import com.acme.bankapp.domain.bank.Client;
import com.acme.bankapp.domain.bank.Gender;

public class BankApplication {

	public static void main(String[] args) {
		listenersDemo();
	}

	private static void listenersDemo() {
		Bank bank = new Bank();
		
		BankService.setupClientRegistrationListeners(bank);
		
		BankService.addClient( bank, new Client("Vasiliy Pupkin", Gender.MALE, new SavingAccount(200)) );
		BankService.addClient( bank, new Client("Anna Karenina", Gender.FEMALE, new SavingAccount(500)) );
		BankService.addClient( bank, new Client("Lizzie Bennet", Gender.FEMALE, new SavingAccount(1000)) );
		BankService.addClient( bank, new Client("Oleg Portnov", Gender.MALE, new SavingAccount(300)) );
		BankService.addClient( bank, new Client("Tereza Lisbon", Gender.FEMALE, new CheckingAccount(400, 100)) );
	}
}